<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Oatc.OpenMI.Sdk.Buffer</name>
    </assembly>
    <members>
        <member name="T:Oatc.OpenMI.Sdk.Buffer.Support">
            <summary>
            Support functions for the Buffer.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.Support.IsBefore(OpenMI.Standard.ITime,OpenMI.Standard.ITime)">
            <summary>
            return true if ta is before tb (eveluates (ta less than tb)
            </summary>
            <param name="ta">Time ta</param>
            <param name="tb">time tb</param>
            <returns>true if ta is before tb (eveluates (ta less than tb)</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.Support.GetVal(OpenMI.Standard.IValueSet,System.Int32,System.Int32)">
            <summary>
            GetVal will get the index´th number of the axisNumber´th component of the 
            ValueSet.
            </summary>
            <param name="values">ValueSet to read the value from.</param>
            <param name="index">Index of the value in the ValueSet.</param>
            <param name="axisNumber">Relevant for VectorSets only. 1: x, 2: y, 3: z.</param>
            <returns>The index´th number of the axisNumber´th component</returns>
        </member>
        <member name="T:Oatc.OpenMI.Sdk.Buffer.SmartBuffer">
            <summary>
            The SmartBuffer class provides bufferig functionality that will store values needed for a
            particular link in memory and functionality that will interpolate, extrapolate and aggregate 
            values from these values.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.#ctor">
             <summary>
             Short description of the SmartBuffer
             </summary>
             <remarks>
            The content of the SmartBuffer is lists of corresponding times and ValueSets,
            where times can be TimeStamps or TimeSpans and the ValueSets can be ScalarSets or VectorSets.
            Or in other words the content of the SmartBuffer is corresponding ScalarSets and TimeStamps, or ScalarSets and TimeSpans, or VectorSets and TimeStamps, or VectorSets and TimeSpans.
            
            SmartBuffer objects may not contain mixtures of TimeSpans and TimeStamps and may not contain mixtures of ScalarSets and VectorSets.
            The number of Times (TimeSpans or TimeStamps) must equal the number of ValueSets ( ScalarSets or VectorSets) in the SmartBuffer.
             </remarks>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.#ctor(Oatc.OpenMI.Sdk.Buffer.SmartBuffer)">
            <summary>
            Create a new SmartBuffer with values and times copied from another SmartBuffer
            </summary>
            <param name="smartBuffer">The SmartBuffer to copy</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.AddValues(OpenMI.Standard.ITime,OpenMI.Standard.IValueSet)">
            <summary>
            Add corresponding values for time and values to the SmartBuffer.
            </summary>
            <param name="time"> Description of the time parameter</param>
            <param name="valueSet">Description of the values parameter</param>
            <remarks>
            The AddValues method will internally make a copy of the added times and values. The reason for
            doing this is that the times and values arguments are references, and the correspondign values 
            could be changed by the owner of the classes
            </remarks>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.GetTimeAt(System.Int32)">
            <summary>
            Returns the timeStep´th ITime.
            </summary>
            <param name="timeStep">time step index</param>
            <returns>The timeStep´th ITime</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.GetValuesAt(System.Int32)">
            <summary>
            Returns the timeStep´th IValueSet
            </summary>
            <param name="timeStep">time step index</param>
            <returns>The timeStep´th IValueSet</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.GetValues(OpenMI.Standard.ITime)">
            <summary>
            Returns the ValueSet that corresponds to requestTime. The ValueSet may be found by 
            interpolation, extrapolation and/or aggregation.
            </summary>
            <param name="requestedTime">time for which the value is requested</param>
            <returns>valueSet that corresponds to requestTime</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.MapFromTimeSpansToTimeSpan(OpenMI.Standard.ITimeSpan)">
            <summary>
            A ValueSet corresponding to a TimeSpan is calculated using interpolation or
            extrapolation in corresponding lists of ValueSets and TimeSpans.
            </summary>
            <param name="requestedTime">Time for which the ValueSet is requested</param>
            <returns>ValueSet that corresponds to requestedTime</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.MapFromTimeStampsToTimeSpan(OpenMI.Standard.ITimeSpan)">
            <summary>
            A ValueSet corresponding to a TimeSpan is calculated using interpolation or
            extrapolation in corresponding lists of ValueSets and TimeStamps.
            </summary>
            <param name="requestedTime">Time for which the ValueSet is requested</param>
            <returns>ValueSet that corresponds to requestedTime</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.MakeCopyOfValues">
            <summary>
            Makes a copy of the first ValueSet in the list of valueSets
            </summary>
            <returns></returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.MapFromTimeStampsToTimeStamp(OpenMI.Standard.ITimeStamp)">
            <summary>
            A ValueSet corresponding to a TimeStamp is calculated using interpolation or
            extrapolation in corresponding lists of ValueSets and TimeStamps.
            </summary>
            <param name="requestedTimeStamp">TimeStamp for which the values are requested</param>
            <returns>ValueSet that corresponds to the requested time stamp</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.MapFromTimeSpansToTimeStamp(OpenMI.Standard.ITimeStamp)">
            <summary>
            A ValueSet corresponding to a TimeSpan is calculated using interpolation or
            extrapolation in corresponding lists of ValueSets and TimeSpans.
            </summary>
            <param name="requestedTimeStamp">Time for which the ValueSet is requested</param>
            <returns>ValueSet that corresponds to requestedTime</returns>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.CheckBuffer">
            <summary>
            Checks weather the contents of the buffer is valid.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.CheckTime(OpenMI.Standard.ITime)">
            <summary>
            Validates a given time. The check made is for TimeSpan the starting time must be smaller 
            than the end time. Throws exception if the time is not valid.
            </summary>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.ClearAfter(OpenMI.Standard.ITime)">
            <summary>
            Clear all times and values in the buffer at or later than the specified time
            If the specified time is type ITimeSpan the Start time is used.
            </summary>
            <param name="time"></param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.ClearBefore(OpenMI.Standard.ITimeStamp)">
            <summary>
            Clear all records in the buffer assocaited to time that is earlier that the
            time specified in the argument list. However, one record associated to time 
            before the time in the argument list is left in the buffer.
            The criteria when comparing TimeSpans is that they may not overlap in order
            to be regarded as before each other.
            (see also Oatc.OpenMI.Sdk.Buffer.Support.IsBefore(ITime ta, ITime tb)
            </summary>
            <param name="time">time before which the records are removed</param>
        </member>
        <member name="M:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.Clear(OpenMI.Standard.ITimeSpan)">
            <summary>
            Clears the buffer between start- and end- time of the time (TimeSpan).
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.RelaxationFactor">
            <summary>
            RelaxationFactor. The relaxation factor must be in the interval [0; 1]. The relaxation
            parameter is used when doing extrapolation. A value of 1 results in nearest extrapolation
            whereas a value 0 results in linear extrapolation.
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.TimesCount">
            <summary>
            Number of time streps in the buffer.
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.ValuesCount">
            <summary>
            Read only property for the number of values in each of the valuesets contained in the buffer.
            </summary>
        </member>
        <member name="P:Oatc.OpenMI.Sdk.Buffer.SmartBuffer.DoExtendedDataVerification">
            <summary>
            Read/Write property flag that indicates wheather or not to perform extended data
            checking.
            </summary>
        </member>
    </members>
</doc>
